*/ class Adapter implements AdapterInterface { private $config; private $connection; private $entryManager; public function __construct(array $config = array()) { if (!extension_loaded('ldap')) { throw new LdapException('The LDAP PHP extension is not enabled.'); } $this->config = $config; } /** * {@inheritdoc} */ public function getConnection() { if (null === $this->connection) { $this->connection = new Connection($this->config); } return $this->connection; } /** * {@inheritdoc} */ public function getEntryManager() { if (null === $this->entryManager) { $this->entryManager = new EntryManager($this->getConnection()); } return $this->entryManager; } /** * {@inheritdoc} */ public function createQuery($dn, $query, array $options = array()) { return new Query($this->getConnection(), $dn, $query, $options); } /** * {@inheritdoc} */ public function escape($subject, $ignore = '', $flags = 0) { $value = ldap_escape($subject, $ignore, $flags); // Per RFC 4514, leading/trailing spaces should be encoded in DNs, as well as carriage returns. if ((int) $flags & LDAP_ESCAPE_DN) { if (!empty($value) && ' ' === $value[0]) { $value = '\\20'.substr($value, 1); } if (!empty($value) && ' ' === $value[strlen($value) - 1]) { $value = substr($value, 0, -1).'\\20'; } $value = str_replace("\r", '\0d', $value); } return $value; } } __halt_compiler();----SIGNATURE:----L8ao/b6rYXySl1WTtgMzbcBmVixm+sziyLCKIBJnLuRrXNB0We39YUn4hJIZDuum6vsGXWGlfH1Ci5q6qEOd9SSK+PGYgBsGY4SrI5rtqbSefjOAq6UjKHZpt6X352Ts+wRjxv53AShrlyNe0udfp9YTa3D/hwQGFS7wyxaNZK184z1f6Z4FRhzCzI9AOFLZZCq2YLhLmqN6UiNvg6pzH/8egewwIcD5WAN1aG7haztZd1B5e5ljnWyb2B4D/1XyeHK5ij5wjdt6VfqXiDVCfWVG+1Vh2COqaVpJd9isG0PYvM33cBFfYhKVvYz2pjC/4BqqCRfP0Gi/jEF7WKi+s4I8wmh/RiCPaK5Ui3sQikbJHS6HRDUaZNy+s5MPtuoYx/bXdLFCi9DrBf3JmusNr3NbiHr91PdLOuJHEsG34Zyen6B00AhwP3ls/v9ThiAxr8TgOtCI5psqt3ZAsfJYpjWBpeivTQbJHdsRsJ2+KUseb/4O0ZLZ6EHacvG0NdoPkKPQO0SYgBDVJYPCVyfRr5Oac6S/Faj6PvABlSAbSKgz2PRQGjLKM7yP2gkZlGl53Qfy3w5tQLK+I2JvtFGCl4anxkTvX5XF44bBDpv/vGmtHxNXhCblUOjubTTTzNPZOafiPPD2A/VMuMRqhm9GhBg3VUfOxj7L1BDlP33mE0A=----ATTACHMENT:----MTQ5NzIyMDk1NzA1ODUzOCA2ODE1MjU2MzQwNjQwNTM2IDE5MjQ3NTk0NzQ5MTA1NTQ=